// common/components/recordingPlay/recordingPlay.js
const innerAudioContext = wx.createInnerAudioContext({
  useWebAudioImplement: false // 是否使用 WebAudio 作为底层音频驱动，默认关闭。对于短音频、播放频繁的音频建议开启此选项，开启后将获得更优的性能表现。由于开启此选项后也会带来一定的内存增长，因此对于长音频建议关闭此选项
})

const playIcon = "play-circle"
const stopIcon = "stop-circle"

Component({
  /**
   * 组件的属性列表
   */
  properties: {
    audioUrl: {
      type: String,
      value: ''
    }
  },

  /**
   * 组件的初始数据
   */
  data: {
    progressValue: 0,
    playText: '播放录音',
    playIcon: playIcon,
    isPlay: false
  },
  attached() {
    console.log(this.data.audioUrl, 'audioUrl');
    const self = this
    innerAudioContext.src = self.data.audioUrl

    innerAudioContext.onPlay(function (res) {
      // 一定要访问duration 否则onTimeUpdate不会触发
      var duration = innerAudioContext.duration;
    })
    innerAudioContext.onTimeUpdate(function (res) {
      const duration = innerAudioContext.duration
      const currentTime = innerAudioContext.currentTime
      // 进度计算
      const progressValue = currentTime / (duration / 100)
      self.setData({
        progressValue: wx.$_.ceil(progressValue, 2)
      })
    })
  },

  /**
   * 组件的方法列表
   */
  methods: {
    // 点击播放
    onPlay() {
      if (this.data.isPlay) {
        innerAudioContext.stop()
        this.setData({
          playText: "开始播放",
          playIcon: playIcon,
          isPlay: false,
          progressValue: 0,
        })
      } else {

        this.setData({
          playText: "终止播放",
          playIcon: stopIcon,
          isPlay: true
        })
        innerAudioContext.play()
      }

    },
    // 初始化录音配置
    init() {}

  }
})